package com.zzl.springboot.mapper;

import com.zzl.springboot.entity.UserVol;
import com.zzl.springboot.entity.Vol;
import com.zzl.springboot.entity.VolExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;

public interface VolMapper {
    long countByExample(VolExample example);

    int deleteByExample(VolExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(Vol record);

    int insertSelective(Vol record);

    List<Vol> selectByExample(VolExample example);

    Vol selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") Vol record, @Param("example") VolExample example);

    int updateByExample(@Param("record") Vol record, @Param("example") VolExample example);

    int updateByPrimaryKeySelective(Vol record);

    int updateByPrimaryKey(Vol record);

    // 仅供获取列表使用 条件 state ！= -1
    List<Vol> selectAll();

    int updateVol(Vol vol);

    Vol selectById(Integer id);

    int setVolUser(@Param("volId") Integer id, @Param("userId") Integer userId);

    UserVol selectVolUser(@Param("volId") Integer volId, @Param("userId") Integer userId);

    List<Vol> selectByUserId(Integer id);

    Integer selectByUserIdCount(Integer id);

    Integer selectVolUserCountByUserId(Integer id);
}